package com.lesson01_JavaBase.base;

public class VariableCalc {
    public static void main(String[] args) {
        // 定义不同类型的变量并进行赋值操作
        byte b = 120;
        short st=320;
        int age = 3000000;
        long height = 300000000000L;
        float price = 43.2F;
        double price1 = 54.3D;
        char ch = 'A';
        boolean flag = true;
        // 定义不合法的变量
        // int 1age = 30; 不能以数字开头
        // int a&$# = 10; 不能包含除$符号特殊符号
        int ___ = 10;
        int $$$11kfk= 30;
        // 变量的运算
        int a1 = 10;
        double d = 20;
        double sum = a1+ d;  // 运算过程中永远返回值类型是运算中最强的那个数的类型
        // 数据类型强弱
        // dobule > float > long > int > short > byte,char
        // 递增，递减 [结果：递增在前，先计算在输出，递增在后，先输出在运算]
        int a = 3;
        // a++ => a = a +1
        // ++a => a = a +1
        System.out.println(a++); // 输出？  3
        System.out.println(++a); // 输出？  5
        short s1 = 1;
        short s2 = (short)(s1 +1);
        s2 += 1; // s2 = s2 + 1; //不能提升结果类型。
        /////////////////// 比较运算 [> ,< ,>= ,<=, != ,==]返回boolean类型///////////////////
        System.out.println(1 > 1);
        System.out.println(1 == 1);
        //////////////////// 逻辑运算符[&&,||,!] //////////////////
        int num1 = 3;
        int num2 = 5;
        int num3 = 4;
        System.out.println(num1 == 3 && num2 <1);
        System.out.println(num1 == 3 || num2 <1);
        System.out.println(!(num1 == 3 || num2 <1));
        ///////////////////// 位运算[<<,>>,<<<,&,|,^,~] ////////////////////////

    }
}